package com.tianji.jersey.resource.client;

import com.sun.jersey.api.representation.Form;
/**
 * 
 * @author kanghui
 *
 * @param <T>
 */
public interface HttpResourceClient<T> {
	/**
	 * 修改接受文件类型
	 * @param acceptType
	 * @return
	 */
	public HttpResourceClient<T> setAcceptType(String acceptType);
	/**
	 * 修改传送内容类型
	 * @param contentType
	 * @return
	 */
	public HttpResourceClient<T> setContentType(String contentType);
	/**
	 * get one resource
	 * @return T
	 */
	public T get();
	/**
	 * post 一个空请求
	 */
	public void post();
	/**
	 * post 没有返回值
	 */
	public void postNoReturn(Object obj);
	/**
	 * 
	 * @param form
	 * @return
	 */
	public T post(Form form);
	/**
	 * 
	 * @param obj
	 * @return
	 */
	public T post(Object obj);
	/**
	 * 
	 * @param form
	 * @return
	 */
	public T put(Form form);
	/**
	 * put 没有返回值
	 */
	public void putNoReturn(Object obj);
	/**
	 * 
	 * @param obj
	 * @return
	 */
	public T put(Object obj);
	/**
	 * 
	 */
	public void delete();
	/**
	 * delete 没有返回值
	 */
	public void deleteNoReturn(Object obj);
	/**
	 * 
	 * @param form
	 * @return
	 */
	public T delete(Form form);
	/**
	 * 
	 * @param obj
	 * @return
	 */
	public T delete(Object obj);
}
